package cn.iocoder.yudao.module.tms.controller.admin.accountperiodtodo.vo;

import cn.iocoder.yudao.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 账期待办事项分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class AccountPeriodTodoPageReqVO extends PageParam {

    @Schema(description = "公司ID", example = "1024")
    private Long companyId;

    @Schema(description = "公司名称", example = "XX公司")
    private String companyName;

    @Schema(description = "待办类型", example = "CREDIT_ALERT")
    private String todoType;

    @Schema(description = "状态", example = "PENDING")
    private String status;

    @Schema(description = "优先级", example = "HIGH")
    private String priority;

    @Schema(description = "负责人ID", example = "1")
    private Long assigneeId;

    @Schema(description = "截止时间-开始")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime dueDateStart;

    @Schema(description = "截止时间-结束")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime dueDateEnd;
}
